<template>
  <div>
    <template v-for="(item,index) in menuData">
      <el-submenu v-if="item.sub" :key="index" :index="item.menuId">
        <template slot="title">
          <i :class="item.icon" />
          <span>{{ item.title }}</span>
        </template>
        <MenuTree :menu-data="item.sub" />
      </el-submenu>
      <el-menu-item v-else :key="item.menuId" :index="item.menuId" @click="openTab(item)">
        <i :class="item.icon" />
        <span>{{ item.title }}</span>
      </el-menu-item>
    </template>
  </div>
</template>

<script>
  import config from '@/Frame/MainConf'
  export default {
    name: 'MenuTree',
    props: {
      menuData: {
        type: Array,
        default: function() {
          return []
        }
      }
    },
    data() {
      return {
        config: config,
        menuList: this.menuData
      }
    },
    methods: {
      openTab(item) {
        this.$tab.open(item)
        this.initializeMemu()
      },
      initializeMemu() {
        this.menuList = JSON.parse(JSON.stringify(this.config.menu))
      }
    }
  }
</script>

<style>

</style>
